home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 41.zip / BS1 part 41 / TEX files.adf / samples / heart.tex next >
Text File  |  1988-02-21  |  856b  |  55 lines

  1. %
  2. %   Draws a heart.
  3. %
  4. \def\pset(#1,#2){\rlap{\kern#1sp\raise#2sp\hbox{/}}}
  5. \newcount\x\newcount\y\newcount\ta\newcount\tb\newcount\div
  6. \newcount\fini\newdimen\radius
  7. %
  8. %   Initialize to draw the top part.
  9. %
  10. \radius=1in
  11. \x=\radius
  12. \y=0
  13. \div=200
  14. %
  15. %   Now, the main loop.
  16. %
  17. \hbox{\bf
  18. \loop
  19. \tb=\radius\multiply\tb by2
  20. \ta=\radius\advance\ta by\x
  21. \pset(\ta,\y)%
  22. \advance\ta by\tb
  23. \pset(\ta,\y)%
  24. \ta=\radius\advance\ta by-\x
  25. \pset(\ta,\y)%
  26. \advance\ta by\tb
  27. \pset(\ta,\y)%
  28. \ta=\x
  29. \divide\ta by\div
  30. \tb=\ta
  31. \ta=\y
  32. \divide\ta by\div
  33. \advance\y by\tb
  34. \advance\x by-\ta
  35. \ifnum\x>0\repeat
  36. \fini=\radius
  37. \multiply\fini by2
  38. \multiply\div by4
  39. \multiply\radius by4
  40. \x=\radius\y=0
  41. \loop
  42. \pset(\x,\y)%
  43. \ta=\radius\advance\ta by-\x
  44. \pset(\ta,\y)%
  45. \ta=\x
  46. \divide\ta by\div
  47. \tb=\ta
  48. \ta=-\y
  49. \divide\ta by\div
  50. \advance\y by-\tb
  51. \advance\x by-\ta
  52. \ifnum\x>\fini\repeat
  53. }
  54. \bye
  55.